package com.example.demo.alarm.mapper;

import com.example.demo.alarm.dao.AlarmTactics;
import com.example.demo.alarm.dao.AlarmTacticsSensor;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

@Mapper
public interface AlarmTacticsMapper {

    List<AlarmTactics> getList(@Param("start") Integer start,
                               @Param("pageSize") Integer pageSize,
                               @Param("name") String name,
                               @Param("healthOrComfort") String healthOrComfort);

    Integer getListCount(@Param("name") String name,
                         @Param("healthOrComfort") String healthOrComfort);

    List<AlarmTacticsSensor> getSensorList(Integer tacticsId);

    AlarmTactics get(Integer id);

    void add(AlarmTactics alarmTactics);

    void addSensorList(AlarmTacticsSensor alarmTacticsSensor);

    void update(AlarmTactics alarmTactics);

    void updateSensorList(AlarmTacticsSensor alarmTacticsSensor);

    void delete(Integer id);

    void deleteSensorList(Integer tacticsId);

    void deleteSensor(Integer sensorId);

    //根据报警策略id和传感器id获取报警上下限
    AlarmTacticsSensor getSensor(@Param("tacticsId") Integer tacticsId, @Param("sensorId") Integer sensorId);

    //综合看板获取健康值和舒适度
    AlarmTactics getHealthOrComfort(String healthOrComfort);
}
